#ifndef _COMMOM_H
#define _COMMON_H

#include <zephyr/kernel.h>

#define LOG_FLOAT_MARKER "%s%d.%02d"
 
#define LOG_FLOAT(val) (((val) < 0 && (val) > -1.0) ? "-" : ""),   \
                           (int32_t)(val),                                       \
                           (int32_t)((((val) > 0) ? (val) - (int32_t)(val)       \
                                                : (int32_t)(val) - (val))*100)
                                                
void wdt_handle(void);
int watchdog_init(void);
void download_function(void *p1, void *p2, void *p3);
void jump_to_addr(uint32_t addr);
uint16_t CRC16_ModBus(uint8_t *puchMsg, uint16_t usDataLen);
int str2int(const char *str);
void int2str(int n, char *str);
float my_atof(const char* str);
#endif
